In application virtualization, a host operating system creates a simulated computer environment or virtual environment on a computing device to execute virtual applications without installing the virtual applications locally and without altering the host operating system. The virtual applications execute locally using the local hardware resources, and may interact with the host operating system although aspects of the virtual environment may be hidden from the host operating system (e.g., registry keys, files, etc.).
This is possible because the virtual environment contains the components needed to execute the virtual applications on the computing device, such as registry entries, files, environment variables, user interface elements, and global objects. These components in the virtual environment are not visible to the host operating system. Add-on components associated with the virtual applications, such as shell extensions, plug-ins, etc. also are not visible to the host operating system, because the host operating system does not have access to an add-on component's registry entries or files. As a result, the host operating system remains unaware of the add-on components available in the virtual environment and cannot use the functionalities provided by the add-on components available in the virtual environment.